<?php include "../public/header.php";?>
<?php include "../public/header_edit.php";?>
<link rel="stylesheet" type="text/css" href="/static/component/laytp/module/cityPicker/city-picker.css">

<body id="optPage">
<form class="layui-form layui-form-pane" id="commentForm">
    <div class="page-title"><div class="page-title-con"><span>补票</span><div class="move_title"></div><?php include "../public/sub.php";?></div></div>
    <div class="main-container">
        <div class="block-generic">
            <div class="layui-form-item">
                <div class="layui-row layui-col-space10">
                    <div class="layui-col-md12">
                        <label class="layui-form-label">发票金额合计(元)</label>
                        <div class="layui-input-block">
                            <input type="text" name="piaofee" id="piaofee" placeholder="明细自动合计" readonly autocomplete="off" class="layui-input moneyinput disabled">
                        </div>
                    </div>
                </div>
            </div>
            <?php include '../public/upinfo.php'?>
        </div>
        <div class="block-generic">
            <div class="layui-form-item height_auto">
                <div class="short_table_list" key="1">
                    <div class="opt-btn-group">
                        <div><span>发票明细</span></div>
                        <div>
                            <input type="file" id="uploadtrip" value="" accept="image/*,application/pdf" style="display: none"/>
                            <button type="button" onclick="trip_piao_data()" class="layui-btn layui-btn-sm layui-btn-primary mingxibtn">发票识别</button>
                            <button type="button" class="layui-btn layui-btn-sm layui-btn-primary mingxibtn short_table_add_row">插入行</button>
                            <button type="button" class="layui-btn layui-btn-sm layui-btn-primary mingxibtn short_table_del_row">删除行</button>
                            <button type="button" class="layui-btn layui-btn-sm layui-btn-primary mingxibtn short_table_del_all">删除全部</button>
                        </div>
                    </div>
                    <table class="layui-table" lay-size="sm">
                        <thead>
                        <tr>
                            <th width="45">序号</th>
                            <th><text>*</text>发票号码</th>
                            <th><text>*</text>发票类型</th>
                            <th><text>*</text>发票金额-价税合计(元)</th>
                            <th>备注</th>
                        </tr>
                        </thead>
                        <tbody class="short_table_tbody" id="list_list"></tbody>
                    </table>
                    <div class="listerror">提示：<span></span></div>
                </div>
            </div>
        </div>
    </div>
</form>
<script>
    var param_id = getQueryVariable('id') || 0;

    var pub_qianpiaotype, pub_xiangguanfujian_id;

    layui.use(['laytp', 'form'], function() {
        var form = layui.form, layer = layui.layer;
        render_input_attr();

        facade.ajax({type: 'get', url: ask_hou_bao_piao, data:{id:param_id}}).done(function(res){
            if (res.code === 2000) {
                var data = res.data.data;
                $("#piaofee").val(data.piaofee);


                pub_qianpiaotype = res.data.qianpiaotype;

                var piaoAddStr = '';
                piaoAddStr += '<tr>';
                piaoAddStr += '<td style="width: 45px">1</td>';
                piaoAddStr += '<td><input type="text" class="layui-input xiaoer"></td>';
                piaoAddStr += '<td><div class="qianpiaotype"></div></td>';
                piaoAddStr += '<td><input type="text" class="layui-input nums"></td>';
                piaoAddStr += '<td><input type="text" class="layui-input kaidt bdate_ymd" readonly></td>';
                piaoAddStr += '<td><input type="number" class="layui-input fee"></td>';
                piaoAddStr += '<td><input type="number" class="layui-input rate"></td>';
                piaoAddStr += '<td><input type="number" class="layui-input ratefee"></td>';
                piaoAddStr += '<td><input type="number" class="layui-input money"></td>';
                piaoAddStr += '<td><input type="text" class="layui-input huidt bdate_ymd" readonly></td>';
                piaoAddStr += '<td><input type="text" class="layui-input explain"></td>';
                piaoAddStr += '</tr>';
                short_table_opt_func(piaoAddStr, 1, {name:'qianpiaotype', data:res.data.qianpiaotype, value:''});

                var list = res.data.list;
                if(list.length > 0){
                    for (var key in list){
                        var str = '';
                        var nums = parseInt(key)+1;
                        str += '<tr>';
                        str += '<td style="width: 45px">'+nums+'</td>';
                        str += '<td><input type="text"  value="'+list[key].xiaoer+'" class="layui-input xiaoer"></td>';
                        str += '<td><div class="qianpiaotype qianpiaotype'+nums+'" key="'+nums+'"></div></td>';
                        str += '<td><input type="text" class="layui-input nums" value="'+list[key].nums+'"></td>';
                        str += '<td><input type="text" class="layui-input kaidt bdate_ymd" value="'+list[key].kaidt+'"></td>';
                        str += '<td><input type="number" class="layui-input fee" value="'+list[key].fee+'"></td>';
                        str += '<td><input type="number" class="layui-input rate" value="'+list[key].rate+'"></td>';
                        str += '<td><input type="number" class="layui-input ratefee" value="'+list[key].ratefee+'"></td>';
                        str += '<td><input type="number" class="layui-input money" value="'+list[key].money+'"></td>';
                        str += '<td><input type="text" class="layui-input huidt bdate_ymd" value="'+list[key].huidt+'"></td>';
                        str += '<td><input type="text" class="layui-input explain" value="'+list[key].explain+'"></td>';
                        str += '</tr>';

                        $("#list_list").append(str);
                        xmselect_list_dan('qianpiaotype'+nums, res.data.qianpiaotype, list[key].qianpiaotype);
                    }
                }
                update_refresh_row_func();

                public_upload_file_load('upload_files', res.data.files)

                for (var key in res.data.files){
                    if(res.data.files[key].name == '相关附件'){
                        pub_xiangguanfujian_id = res.data.files[key].id
                    }
                }

                initParseMoney();
                render_from();
            }
        });


        form.on('submit(add)', function(data){



            var validRes = $("#commentForm").valid();
            if(!validRes){return false;}


            var list = [''];
            try {
                $('#list_list tr').each(function (i) {
                    var nums = $(this).find('.nums').val();
                    var qianpiaotype = $(this).find('.qianpiaotype').find('input').val();
                    var money = $(this).find('.money').val();
                    var explain = $(this).find('.explain').val();

                    var index = i + 1;
                    if(!nums){
                        throw new Error('第'+index+'行，请输入发票号码');
                    }
                    if(!qianpiaotype){
                        throw new Error('第'+index+'行，请选择发票类型');
                    }
                    if(!money){
                        throw new Error('第'+index+'行，请输入价税合计金额');
                    }

                    list.push({
                        nums:nums,
                        qianpiaotype:qianpiaotype,
                        money:money,
                        explain:explain,
                    });
                });
            } catch(e) {
                $(".listerror").find('span').text(e.message);
                $(".listerror").show();
                return false;
            }
            $(".listerror").hide();
            data.field.list = list;


            data.field.id = param_id;
            data.field.files = public_upload_file_value('upload_files');
            data = parseMoney(data);
            facade.ajax({url: ask_hou_bao_piao, data:data.field}).done(function(res){
                if (res.code === 2000) {
                    dataPostTimeOut();
                }
            });

            return false;
        });

    });



    $('#list_list').on('input propertychange','.money',function () {
        jisuan_piaofee_all();
    });
    function jisuan_piaofee_all() {
        var allmoney = 0;

        $('#list_list tr').each(function (i) {
            var money = parseValidNum($(this).find('.money').val());
            allmoney = parseFloat(allmoney) + parseFloat(money);
        });

        $("#piaofee").val(parseFormatNum(allmoney,2));
    }


    function update_refresh_row_func() {
        render_date();
        render_from();
        jisuan_piaofee_all();
        $.each($("#list_list").children('tr'),function (key,val) {
            $(this).children('td:first-child').html(key+1);
        });

        setTimeout(function () {
            $(".short_table_list table tbody tr").click(function () {
                $(".short_table_list table tbody tr").removeClass('line-row');
                $(".short_table_list table tbody tr").attr('sle','');
                $(this).addClass('line-row');
                $(this).attr('sle','sle');
            });
        },1000);
    }





    function trip_piao_data() {
        $("#uploadtrip").val();
        $("#uploadtrip").click();
    }

    $("#uploadtrip").change(function () {
        var loading = layui.layer.load(0, {shade: 0.1});
        let fd = new FormData();
        fd.append('file', this.files[0]);
        fd.append('token', facade.getCookie('token'));
        $.ajax({
            url: server_api_name+ask_upload_houbao_file,
            type: "POST",
            data: fd,
            contentType: false,
            processData: false,
            dataType: "json",
            success: function (res) {
                $("#uploadtrip").val();
                layui.layer.close(loading);
                if (res.code === 2000) {
                    var fileinfo = res.data.fileinfo;
                    var piaoinfo = res.data.piaoinfo;


                    //处理发票明细信息
                    var str = '';
                    var hang_num = $("#list_piao tr").length;
                    var nums = parseInt(hang_num)+1;
                    str += '<tr>';
                    str += '<td style="width: 45px">'+nums+'</td>';
                    str += '<td><input type="text" value="'+piaoinfo.xiaoer+'" class="layui-input xiaoer"></td>';
                    str += '<td><div class="qianpiaotype qianpiaotype'+nums+'" key="'+nums+'"></div></td>';
                    str += '<td><input type="text" class="layui-input nums" value="'+piaoinfo.nums+'"></td>';
                    str += '<td><input type="text" class="layui-input kaidt bdate_ymd" value="'+piaoinfo.kaidt+'"></td>';
                    str += '<td><input type="number" class="layui-input fee" value="'+piaoinfo.fee+'"></td>';
                    str += '<td><input type="number" class="layui-input rate" value="'+piaoinfo.rate+'"></td>';
                    str += '<td><input type="number" class="layui-input ratefee" value="'+piaoinfo.ratefee+'"></td>';
                    str += '<td><input type="number" class="layui-input money" value="'+piaoinfo.money+'"></td>';
                    str += '<td><input type="text" class="layui-input huidt bdate_ymd"></td>';
                    str += '<td><input type="text" class="layui-input explain" value="'+piaoinfo.explain+'"></td>';
                    str += '</tr>';
                    $("#list_piao").append(str);
                    xmselect_list_dan('qianpiaotype'+nums, pub_qianpiaotype, piaoinfo.qianpiaotype);
                    update_refresh_row_func()



                    //处理附件信息
                    var filename = fileinfo.name;
                    var filepath = fileinfo.encpath;
                    var fileurl = get_file_complete(filepath);
                    var id = fileinfo.id;
                    var filesize = fileinfo.size;
                    var fileext = fileinfo.ext;
                    var created_user = fileinfo.created_user;
                    var created_at = fileinfo.created_at;

                    var imgstr = '';
                    imgstr += '<div class="filebb" id='+id+'>';
                    imgstr += '<div class="tu">';
                    if(fileext == 'png' || fileext == 'pneg' || fileext == 'jpg' || fileext == 'jpeg' || fileext == 'gif'){
                        imgstr += '<img src="'+fileurl+'">';
                    }else{
                        imgstr += '<div class="zimu">'+fileext+'</div>';
                    }
                    imgstr += '</div>';
                    imgstr += '<div class="titss">'+filename+'</div>';
                    if(fileext == 'png' || fileext == 'pneg' || fileext == 'jpg' || fileext == 'jpeg' || fileext == 'gif'){
                        imgstr += '<i class="layui-icon layui-icon-search cha" onclick="upload_files_viewer_imgnew_show(\''+filepath+'\',\''+fileurl+'\')" title="查看"></i>';
                    }else if(fileext == 'pdf'){
                        imgstr += '<i class="layui-icon layui-icon-search cha" onclick="upload_files_viewer_pdf_show(\''+fileurl+'\')" title="查看"></i>';
                    }else if(fileext == 'doc' || fileext == 'docx' || fileext == 'xls' || fileext == 'xlsx' || fileext == 'ppt' || fileext == 'pptx'){
                        imgstr += '<i class="layui-icon layui-icon-search cha" onclick="upload_files_vieweroffice_show(\''+fileurl+'\')" title="查看"></i>';
                    }else{
                        imgstr += '<i class="layui-icon layui-icon-search cha" onclick="upload_files_show_yulan_not()" title="查看"></i>';
                    }

                    imgstr += '<i class="layui-icon layui-icon-delete del" onclick="upload_files_del_filenew(this)" title="删除"></i>';
                    imgstr += '</div>';

                    $('#files_type'+pub_xiangguanfujian_id+' #fileboxss').append(imgstr);


                    render_from();
                }else{
                    facade.error(res.msg);
                }
            },
            error: function (res) {
                $("#uploadtrip").val();
                layui.layer.close(loading);
                facade.error("网络错误");
            },
        })
    });

</script>
</body>
</html>
